package zww.study.objcet;

public abstract class AbstractClassStudy {
    /*
     * 在做子类共性功能抽取时，有些方法在父类中并没有具体的体现，这个时候就需要抽象类了
     * 在Java中，一个没有方法体的方法应该定义为抽象方法，
     * 而类中如果有抽象方法，该类必须定义为抽象类
     * */
    /*
     *
     * //抽象类的定义 public abstract class 类名 {}
     * //抽象方法的定义 public abstract void eat();
     * */

    /*
     *抽象类中不一定有抽象方法，有抽象方法的类一定是抽象类
     * 抽象类不能实例化
     *抽象类不能实例化
     * 抽象类可以有构造方法
     * 抽象类的子类：要么重写抽象类中的所有抽象方法 要么是抽象类
     * */
    public void drink() {
        System.out.println("喝水");
    }

    public AbstractClassStudy() {
    }

    public abstract void eat();

}
